package sm.pzavoli.mercato.dialogs;

import sm.pzavoli.mercato.GraficoActivity;
import sm.pzavoli.mercato.R;
import android.app.Dialog;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class DialogSpettro extends Dialog implements android.view.View.OnClickListener {

	public float MarkerDown = 100;
	public float MarkerUp = 0;
	/* Rappresenta i valori del grafico del titolo storico */
	public float m_valoriGrafico[] = null;
	GraficoActivity m_grafico = null;
	
	public int ArmonicaPA = 0;
	public int ArmonicaPB = 0;
	
	public DialogSpettro(Context context) {
		super(context);
		m_grafico = (GraficoActivity) context;
	}

	public DialogSpettro(Context context, int theme) {
		super(context, theme);
		m_grafico = (GraficoActivity) context;
	}

	public DialogSpettro(Context context, boolean cancelable,
			OnCancelListener cancelListener) {
		super(context, cancelable, cancelListener);
		m_grafico = (GraficoActivity) context;
	}

	public void setFrequenze(float a[]) {
		m_valoriGrafico = a;
	}
	
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		setContentView(R.layout.dialog_frequenze);
		SpectrumView view = (SpectrumView ) findViewById(R.id.spectrumView);
		view.setParent(this);
		view.setNumArmonicheVis(12);
		Button btok = (Button ) findViewById(R.id.buttonDialogFrequenzeOk);
		btok.setOnClickListener(this);
		Button btzm = (Button ) findViewById(R.id.ButtonSpectrumZoomMeno);
		btzm.setOnClickListener(this);
		Button btzp = (Button ) findViewById(R.id.ButtonSpectrumZoomPiu);
		btzp.setOnClickListener(this);			
	}	
	
	@Override
	public void onClick(View arg0) {
		Button bt = (Button) arg0;
		if ( bt.getId() == R.id.buttonDialogFrequenzeOk) {
			try {
				// Assegno le percentuali delle armoniche alla drawview che le mantiene
				m_grafico.getDrawView().creaPuntiDopoFiltroArmoniche();
				m_grafico.getDrawView().invalidate();
			} finally {
				dismiss();
			}
		}
		if ( bt.getId() == R.id.ButtonSpectrumZoomMeno) {
			try {
				SpectrumView view = (SpectrumView ) findViewById(R.id.spectrumView);
				int numarmoniche = view.getNumArmonicheVis();
				if ( numarmoniche > 5) {
					view.setNumArmonicheVis(numarmoniche - 4);
					view.creaPathArmoniche(view.getWidth(), view.getHeight());
				}
				view.invalidate();
			} finally {
			}
		}
		if ( bt.getId() == R.id.ButtonSpectrumZoomPiu) {
			try {
				SpectrumView view = (SpectrumView ) findViewById(R.id.spectrumView);
				int numarmoniche = view.getNumArmonicheVis();
				if ( numarmoniche < 30) {
					view.setNumArmonicheVis(numarmoniche + 4);
					view.creaPathArmoniche(view.getWidth(), view.getHeight());
				}
				view.invalidate();
			} finally {
			}
		}
		
	}

}
